Practical Experiences with Java Compilation
نویسندگان
چکیده
The Java programming language and the underlying virtual machine model have introduced new complexities for compilation. Various approaches ranging from just in time (JIT) compilation to ahead of time (AOT) compilation are being explored with the aim of improving the performance of Java programs. The hurdles facing the achievement of high performance in Java and the strengths and weaknesses of different approaches to Java compilation are addressed in this paper, specifically within the context of SGI’s effort to provide a high-performance Java execution environment for its computing platforms. The SGI JIT compiler and prototype AOT compiler are described, and performance results are presented and discussed.
منابع مشابه
Berlioz: Compiling Oz to Java Bytecode
Oz is a multi-paradigm programming language that aims to unify the advantages of object-oriented, concurrent constraint and functional programming. Java, apart from being the name of a programming language itself, is a portable runtime environment whose presence has become ever so prevalent. A compilation scheme from the language Oz to Java bytecode, therefore, would seem promising and interest...
متن کاملA Modularity Bug in Java 8
We demonstrate a modularity bug in the interface system of Java 8 on the practical example of a textbook design of a modular interface for vector spaces. Our example originates in our teaching of modular object-oriented design in Java 8 to undergraduate students, simply following standard programming practices and mathematical definitions. The bug shows up as a compilation error and should be f...
متن کاملUsing a Java Optimized Processor in a Real World Application
Java, a popular programming language on desktop systems, is rarely used in embedded systems. Some features of Java, like thread support in the language, could greatly simplify development of embedded systems, but the common implementations of the JVM (Java Virtual Machine), as interpreter or just-in-time compiler, are not practical. This paper describes an alternative approach: JOP (a Java Opti...
متن کاملContracts for Java: A Practical Framework for Contract Programming
This report introduces Contracts for Java (Cofoja), a new framework for contract programming in Java, and the successor to Johannes Rieken’s Modern Jass. Based on the same standard Java technologies such as annotation processing and bytecode instrumentation, it improves upon the stub-based separate compilation strategy of its predecessor. Contracts for Java promotes a minimalistic yet expressiv...
متن کاملDistributed Libraries Management for Remote Compilation and Execution on Grid Platforms with JaDiMa
In distributed environments (e.g. grid platform) it is common to find pieces of reusable code distributed among multiple sites. The possibilities of compilation and execution with remote libraries have a great potential to facilitate the integration of pieces of software developed among different organizations. This chapter describes JaDiMa (Java Distributed Machine), a collaborative framework ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2000